package cn.jsj.hzu.qm.facecloud.ciuser.service;

import java.util.List;

import cn.jsj.hzu.qm.facecloud.ciuser.pojo.Ciuser;
import cn.jsj.hzu.qm.facecloud.utils.Page;

public interface CiuserService {
	
	
	
	//增
	/**
	 * 新增新的用户(全参数)
	 * */
	public int addFullCiuser(Ciuser ciuser);
	
	
	/**
	 * 新增新的用户（简化参数）
	 * */
	public int addCiuser(String sid, String name, String password, String email,
			 String memo);
	
	//删
	//改
	public int modifyCiuser(Ciuser ciuser);
	//查
	/**
	 * 按照sid(学号)查询用户
	 * */
	public Ciuser findCiuserBySid(String sid);
	
	/**
	 * 按照sid(学号)查询用户
	 * */
	public Ciuser findCiuserBySid(String sid, boolean isAll);
	
	/**
	 * 查询此sid是否已存在
	 * */
	public boolean isCiuserExisted(String sid);
	
	
	/**
	 * 按照id查询用户
	 * */
	public Ciuser findCiuserById(int id);
	
	/**
	 * 查询激活码所属的用户
	 * 
	 * */
	
	public Ciuser findCiuserByAactivation_code(String activation_code);
	
	
	/**
	 * 查询所有用户
	 * <b>不再建议使用</b>
	 * @deprecated
	 * 你应当使用getUsersByType方法代替此功能：
	 * @see #getUsersByType
	 * */
	public List<Ciuser> getAllCiusers();
	
	/**
	 * 按类型分页查询用户
	 * （即用户type）
	 * */
	public List<Ciuser> getUsersByType(int type, Page page);
	
	/**
	 * 某类用户总数
	 * （即用户type）
	 * */
	public int getUsersSumByType(int type);
	
	/**
	 * 按用户类型，分页查询被禁用的用户
	 * （即用户type）
	 * */
	public List<Ciuser> getNotAvailableUsersByPage(Page page);
	
	/**
	 * 查询被禁用的用户总数
	 * （即用户type）
	 * */
	public int getNotAvailableUsersSumByType();
}
